Micron Document
<!DOCTYPE html>
<html class="client-nojs vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-0 vector-toc-not-available vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-0 skin-theme-clientpref-day vector-sticky-header-enabled" lang="de" dir="ltr"><head>
<meta charset="UTF-8">
<title>Programmierung</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="icon" type="image/png" href="./_res_/favicon.png">
<link rel="canonical" href="https://de.wikipedia.org/wiki/Programmierung"> <link href="./_mw_/ext.cite.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.wikimediamessages.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link href="./_mw_/ext.gadget.citeRef.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.defaultPlainlinks.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiCommonHide.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiCommonLayout.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiCommonStyle.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiDarkmode.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiResponsive.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.specialSearch.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" type="text/css" href="./_mw_/site.styles.css">
<link rel="stylesheet" type="text/css" href="./_mw_/noscript.css">
<link rel="stylesheet" type="text/css" href="./_res_/footer.css">
<link rel="stylesheet" type="text/css" href="./_res_/vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Programmierung rootpage-Programmierung skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading"><span class="mw-page-title-main">Programmierung</span></h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="contentSub">
<div id="mw-content-subtitle"></div>
</div>
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="de" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="de" dir="ltr">
<p><b>Programmierung</b> (von <span style="font-style:normal;font-weight:normal"><a href="Altgriechische_Sprache" title="Altgriechische Sprache">altgriechisch</a></span> <span lang="grc-Grek" class="Grek" style="font-style:normal">πρόγραμμα</span> <style data-mw-deduplicate="TemplateStyles:r261937631">
/* start https://de.wikipedia.org/ */


.mw-parser-output .Latn{font-family:"Akzidenz Grotesk","Arial","Avant Garde Gothic","Calibri","Futura","Geneva","Gill Sans","Helvetica","Lucida Grande","Lucida Sans Unicode","Lucida Grande","Stone Sans","Tahoma","Trebuchet","Univers","Verdana"}


/* end https://de.wikipedia.org/ */
</style><span class="Latn" lang="grc-Latn" style="font-weight:normal;font-style:italic">prógramma</span> „öffentlich und schriftlich bekannt gemachte Nachricht, Befehl“)<sup id="cite_ref-1" class="reference"><a href="#cite_note-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup> bezeichnet die Tätigkeit, <a href="Computerprogramm" title="Computerprogramm">Computerprogramme</a> zu erstellen und wird der <a href="Softwaretechnik" title="Softwaretechnik">Softwareentwicklung</a> zugerechnet.<sup id="cite_ref-2" class="reference"><a href="#cite_note-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup>
</p><p>Computerprogramme werden mit Hilfe einer <a href="Programmiersprache" title="Programmiersprache">Programmiersprache</a> formuliert („codiert“). Die <a href="Softwareentwickler#Rollen_und_Aufgaben" title="Softwareentwickler">Programmierenden</a> überführen dabei die z.&nbsp;B. im <a href="Pflichtenheft" title="Pflichtenheft">Pflichtenheft</a> vorgegebenen <a href="Anforderung_(Informatik)" title="Anforderung (Informatik)">Anforderungen</a> in eine bestimmte Programmiersprache. Teilweise werden dazu <a href="Codegenerator" title="Codegenerator">Codegeneratoren</a> verwendet, die Teile des Programmcodes auf Basis von <a href="Modell" title="Modell">Modellen</a> (die im Entwurf entstanden sind) automatisch erzeugen.
</p><p>Beim Programmieren sind wesentliche Aspekte zur <a href="Softwarequalit%C3%A4t" title="Softwarequalität">Softwarequalität</a> zu berücksichtigen und durch die Gestaltung des <a href="Quelltext" title="Quelltext">Quellcodes</a> umzusetzen. Siehe dazu als Beispiele: <a href="Programmierstil" title="Programmierstil">Programmierstil</a>, <a href="Benutzerfreundlichkeit" title="Benutzerfreundlichkeit">Benutzerfreundlichkeit</a>,<sup id="cite_ref-3" class="reference"><a href="#cite_note-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup> <a href="Wiederverwendbarkeit" title="Wiederverwendbarkeit">Wiederverwendbarkeit</a> / <a href="Modularit%C3%A4t" title="Modularität">Modularität</a>, <a href="Wartbarkeit" title="Wartbarkeit">Wartbarkeit</a>.
</p><p>„Programmieren“ <i>in erweitertem Sinn</i> umfasst neben der Codeerstellung zahlreiche weitere Tätigkeiten, zum Beispiel das Testen <a href="Softwaretest#Weitere_Klassifikationen_für_Testarten" title="Softwaretest">(Entwicklertest)</a> des Programms oder das Erstellen der <a href="Softwaredokumentation#Programmiererdokumentation" title="Softwaredokumentation">Programmdokumentation</a>. <i>Abgrenzen</i> vom Begriff des Programmierens lassen sich andere Tätigkeiten zur Softwareentwicklung wie beispielsweise das <a href="Projektmanagement" title="Projektmanagement">Projektmanagement</a>, die <a href="Anforderungsanalyse_(Informatik)" title="Anforderungsanalyse (Informatik)">Anforderungsanalyse</a> oder die <a href="Datenmodellierung" title="Datenmodellierung">Datenmodellierung</a>.
</p><p>Abhängig vom Typ und der Einsatzumgebung von Software (z.&nbsp;B. für <a href="Systemsoftware" title="Systemsoftware">Systemsoftware</a>, Spielesoftware, <a href="Standardsoftware" title="Standardsoftware">Standardsoftware</a>, Grafiksoftware. usw.) können zur Entwicklung unterschiedliche Verfahren oder/und Werkzeuge (wie Programmiersprachen, Testverfahren etc.) zum Einsatz kommen und/oder von spezialisierten <a href="Softwareentwickler" title="Softwareentwickler">Entwicklern</a> ausgeführt werden.
</p><p>Je nach angewendetem <a href="Vorgehensmodell_zur_Softwareentwicklung" title="Vorgehensmodell zur Softwareentwicklung">Vorgehensmodell</a> verlaufen die Aktivitäten zur Programmierung in zeitlich voneinander abgegrenzten <a href="Projektphase" title="Projektphase">Projektphasen</a>, parallel oder iterativ. In der Praxis geschieht das Programmieren häufig in Teamarbeit, mit modernen Entwicklungsmethoden (wie <a href="Agile_Softwareentwicklung" title="Agile Softwareentwicklung">Agile Softwareentwicklung</a>) und <a href="Programmierwerkzeug" title="Programmierwerkzeug">Programmierwerkzeugen</a>.
</p><p><i>Ähnliche Bedeutungen:</i> Umgangssprachlich bezeichnet man gelegentlich auch das Konfigurieren (das Einstellen/Einrichten) von Haushalts- oder anderen elektrischen Geräten als „Programmieren“. Auch <a href="Organisationseinheit" title="Organisationseinheit">Organisationseinheiten</a> von Unternehmen, in denen Software entwickelt wird, werden oder wurden zum Teil „Programmierung“ genannt.
</p>

<div class="mw-heading mw-heading2"><h2 id="Geschichte">Geschichte</h2></div>
<div class="sieheauch" role="navigation" style="font-style:italic;"><span class="sieheauch-text">Siehe auch</span>: <a href="Computerprogramm#Geschichte" title="Computerprogramm">Computerprogramm: Geschichte</a>, <a href="Geschichte_der_Programmiersprachen" title="Geschichte der Programmiersprachen">Geschichte der Programmiersprachen</a> und <a href="Programmiersprache#Geschichte" title="Programmiersprache">Programmiersprache – Geschichte</a></div>
<p><a href="Charles_Babbage" title="Charles Babbage">Charles Babbage</a> beschrieb 1834 eine programmierbare Maschine, die <a href="Analytical_Engine" title="Analytical Engine">Analytical Engine</a>,<sup id="cite_ref-4" class="reference"><a href="#cite_note-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup> welche allerdings nie gebaut wurde. Seine „Notations of calculations for the Analytical Engine“ umfasst 27 Programme. Diese sind in „The Babbage Papers“ des Science Museums von London abrufbar.<sup id="cite_ref-5" class="reference"><a href="#cite_note-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup> Die Programme enthalten bereits „Indirekte Adressierung“ und „bedingte Ausführungen“ (IF-THEN-ELSE-Befehle). Diese Dokumente dürften als erste Programme und Programmiersprache bezeichnet werden.
</p><p><a href="Ada_Lovelace" title="Ada Lovelace">Ada Lovelace</a> übersetzte 1843 eine ursprünglich französische Beschreibung der Analytical Engine von <a href="Luigi_Federico_Menabrea" title="Luigi Federico Menabrea">Luigi Federico Menabrea</a> ins Englische und fügte eigene Notizen hinzu. Diese Anmerkungen enthielten einen tabellarischen Plan zur Berechnung der Bernoulli-Zahlen. 1941 realisierte <a href="Konrad_Zuse" title="Konrad Zuse">Konrad Zuse</a> mit dem <a href="Zuse_Z3" title="Zuse Z3">Z3</a> die erste programmgesteuerte Rechenmaschine, von 1942 an entwickelte er mit <a href="Plankalk%C3%BCl" title="Plankalkül">Plankalkül</a> die erste <a href="H%C3%B6here_Programmiersprache" title="Höhere Programmiersprache">höhere Programmiersprache</a>.<sup id="cite_ref-6" class="reference"><a href="#cite_note-6"><span class="cite-bracket">[</span>6<span class="cite-bracket">]</span></a></sup> Die Mathematikerin <a href="Grace_Hopper" title="Grace Hopper">Grace Hopper</a> schuf 1949 den ersten <a href="Compiler" title="Compiler">Compiler</a>, der Quellcode in Maschinencode übersetzt.<sup id="cite_ref-7" class="reference"><a href="#cite_note-7"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading2"><h2 id="Qualitätskriterien"><span id="Qualit.C3.A4tskriterien"></span>Qualitätskriterien</h2></div>
<div class="hauptartikel" role="navigation"><span class="hauptartikel-pfeil" title="siehe" aria-hidden="true" role="presentation">→&nbsp;</span><i><span class="hauptartikel-text">Hauptartikel</span>: <a href="Softwarequalit%C3%A4t" title="Softwarequalität">Softwarequalität</a></i></div>
<p>Die Qualität von Software entsteht zu großen Teilen im Rahmen der Tätigkeiten des Programmierens, besonders die folgenden Qualitätskriterien betreffend:
</p>
<div class="mw-heading mw-heading3"><h3 id="Korrektheit">Korrektheit</h3></div>
<div class="hauptartikel" role="navigation"><span class="hauptartikel-pfeil" title="siehe" aria-hidden="true" role="presentation">→&nbsp;</span><i><span class="hauptartikel-text">Hauptartikel</span>: <a href="Programmfehler" title="Programmfehler">Programmfehler</a></i></div>
<p>Ein Programm muss die im Entwurf gemachten Vorgaben korrekt umsetzen. Dazu muss es in der Regel fehlerfrei sein, wobei beim Programmieren meist zwei verschiedene Arten von Fehlern auftreten:
</p>
<ol><li><a href="Syntaxfehler" title="Syntaxfehler">Syntaxfehler</a>: Fehlerhaft formulierter Quellcode – man verwendet Formulierungen oder Konstrukte, die so nicht in der verwendeten Programmiersprache vorkommen (Tippfehler, Unkenntnis, …). Syntaxfehler können beim Übersetzen vom Compiler/Interpreter oder Parser erkannt werden und verhindern i.&nbsp;d.&nbsp;R. die Programmausführung.</li>
<li>Semantische Fehler: Das Programm verhält sich nicht wie gewünscht, weil möglicherweise der Algorithmus oder seine Umsetzung fehlerhaft war. Semantische Fehler können in der Regel nicht automatisch erkannt, sondern nur durch gewissenhaftes Testen gefunden werden – beispielsweise in Form von <a href="Unittest" class="mw-redirect" title="Unittest">Unittests</a>.</li></ol>
<p>Der Übergang zwischen diesen beiden Fehlerarten ist fließend. Beispielsweise wird ein Tippfehler im Code (z.&nbsp;B. „&gt;“ anstatt „&lt;“ in einem Vergleichsbefehl) zu einem gültigen ausführbaren Programm führen, das Resultat dürfte jedoch falsch sein. An anderer Stelle könnte derselbe Fehler ein Syntaxfehler sein.
</p>
<div class="mw-heading mw-heading3"><h3 id="Robustheit">Robustheit</h3></div>
<p>Statistisch gesehen wird die meiste Zeit für die Entwicklung von <a href="Quelltext" title="Quelltext">Quelltext</a> benötigt, um auf Fehler oder außergewöhnliche Anwendungs- oder Hardwareumgebungen zu reagieren. Ein Programmtext, der auch bei unvorhergesehenen Fehlern oder ungewöhnlichen Umgebungen sinnvoll reagiert, wird als robust bzw. portabel bezeichnet. Geübte Programmierer können die möglichen Fehler und Laufzeitumgebungen gut einschätzen und strukturieren das Programm und seinen Quelltext dementsprechend. Der Zeitdruck bei der Entwicklung von Anwendungen stellt selbst an erfahrene Programmierer immer höchste Ansprüche hinsichtlich dieses Kriteriums.
</p>
<div class="mw-heading mw-heading3"><h3 id="Wartbarkeit">Wartbarkeit</h3></div>
<p>Damit eine <a href="Software" title="Software">Software</a> dauerhaft funktioniert, muss sie <i>wartbar</i> sein. Das heißt, Änderungen wie <a href="Bugfix" class="mw-redirect" title="Bugfix">Bugfixes</a>, Anpassungen und neue <a href="Feature-Request" title="Feature-Request">Features</a> müssen ohne großen Aufwand eingepflegt werden können. Dies erfordert vor allem, dass der Programmierer keinen zu kurzen, „kryptischen“ <a href="Quelltext" title="Quelltext">Quelltext</a> (oder <i>Quellcode</i>) erzeugen soll, der für andere Entwickler nicht oder nur mit hoher Einarbeitungszeit verständlich ist.
</p><p>Um solche Probleme zu vermeiden, existieren häufig <a href="Namenskonvention_(Datenverarbeitung)" title="Namenskonvention (Datenverarbeitung)">Namenskonventionen</a>, in denen beispielsweise selbsterklärende (oder auch „sprechende“) Bezeichner/Namen für Variablen etc. zur Verwendung empfohlen/vorgeschrieben werden<sup id="cite_ref-8" class="reference"><a href="#cite_note-8"><span class="cite-bracket">[</span>8<span class="cite-bracket">]</span></a></sup> – oder die Verwendung aussagefähiger <a href="Kommentar_(Programmierung)" title="Kommentar (Programmierung)">Kommentare</a> im Code. Auch eine sinnvolle Aufteilung des Codes in intuitiv verständliche Funktionen und Klassen trägt zum Verständnis und Übersichtlichkeit bei.
</p>
<div class="sieheauch" role="navigation" style="font-style:italic;"><span class="sieheauch-text">Siehe auch</span>: <a href="Programmierstil" title="Programmierstil">Programmierstil</a></div>
<div class="mw-heading mw-heading3"><h3 id="Effizienz">Effizienz</h3></div>
<p>In der Regel stehen einem Programm nur begrenzte Ressourcen (<a href="Laufzeit_(Informatik)" title="Laufzeit (Informatik)">Laufzeit</a>, Speicherverbrauch, Bandbreite) zur Verfügung. Gute Programmierung kann dazu beitragen, unnötigen Ressourcenverbrauch zu reduzieren. Beispielsweise erfolgt dies, indem bei Verwendung großer Datenmengen an mehreren Stellen im Programm nicht jeweils der gesamte Datensatz kopiert wird, sondern nur die Adresse übertragen wird, an der die Daten gespeichert werden.
</p>
<div class="mw-heading mw-heading2"><h2 id="Effiziente_Programmierung">Effiziente Programmierung</h2></div>
<p>Gemäß <a href="Niklaus_Wirth" title="Niklaus Wirth">Niklaus Wirth</a> zeichnet sich gute Programmierung<sup id="cite_ref-9" class="reference"><a href="#cite_note-9"><span class="cite-bracket">[</span>9<span class="cite-bracket">]</span></a></sup> zum einen dadurch aus, dass die Funktionen, die die jeweils verwendete Programmierumgebung bereitstellt, möglichst <a href="Effizienz_(Informatik)" title="Effizienz (Informatik)">effizient</a> genutzt werden. Insbesondere geht es darum, für neue Aufgabenstellungen das Rad nicht immer wieder neu zu erfinden, wenn bestimmte Funktionen schon bereitgestellt werden (zum Beispiel durch die <a href="Programmierumgebung" class="mw-redirect" title="Programmierumgebung">Programmierumgebung</a> in Form von <a href="Programmbibliothek" title="Programmbibliothek">Programmbibliotheken</a>). Sie zeichnet sich also vor allem dadurch aus, dass ein guter Überblick über den grundsätzlichen Funktionsumfang und die Systematik der von der Programmierumgebung bereitgestellten Funktionen (die in die zehntausende gehen können) möglich ist. Für eine definierte Aufgabenstellung kann in entsprechenden Dokumentationen dann schnell eine verfügbare Funktion ermittelt, eingesetzt und ggf. erweitert werden.
</p>
<div class="mw-heading mw-heading2"><h2 id="Arbeitsmittel">Arbeitsmittel</h2></div>
<div class="hauptartikel" role="navigation"><span class="hauptartikel-pfeil" title="siehe" aria-hidden="true" role="presentation">→&nbsp;</span><i><span class="hauptartikel-text">Hauptartikel</span>: <a href="Programmierwerkzeug" title="Programmierwerkzeug">Programmierwerkzeug</a></i></div>
<p>Theoretisch reichen zum Programmieren ein einfacher <a href="Texteditor" title="Texteditor">Texteditor</a> und ein <a href="Compiler" title="Compiler">Compiler</a>/<a href="Interpreter" title="Interpreter">Interpreter</a> für die jeweilige Programmiersprache aus. In der Praxis wird jedoch zusätzlich auf eine Reihe von Werkzeugen zurückgegriffen, die typische Programmierarbeiten vereinfachen sollen. Dazu gehören beispielsweise Texteditoren mit speziellen Features wie <a href="Syntax-Highlighting" class="mw-redirect" title="Syntax-Highlighting">Syntax-Highlighting</a>, <a href="Autovervollst%C3%A4ndigen" class="mw-redirect" title="Autovervollständigen">Autovervollständigen</a> und <a href="Refactoring" title="Refactoring">Refactoring</a> – wobei der Übergang zur <a href="Integrierte_Entwicklungsumgebung" title="Integrierte Entwicklungsumgebung">Integrierten Entwicklungsumgebung (IDE)</a> fließend ist.
</p><p>Daneben existieren verschiedene Werkzeuge zur Fehlersuche, sogenannte <a href="Debugger" title="Debugger">Debugger</a>, sowie Programme zur Durchführung <a href="Statische_Code-Analyse" title="Statische Code-Analyse">statischer</a> und <a href="Dynamisches_Software-Testverfahren" title="Dynamisches Software-Testverfahren">dynamischer Tests</a>. Zur Performanzanalyse kann zusätzlich ein <a href="Profiler_(Programmierung)" title="Profiler (Programmierung)">Profiler</a> eingesetzt werden.
</p><p>Arbeiten mehrere Entwickler an derselben Software, kommen meist <a href="Versionsverwaltung" title="Versionsverwaltung">Versionierungssysteme</a> zum Einsatz, die den Code inklusive früherer Versionen auf einem zentralen Server speichern, auf den alle beteiligten Programmierer Zugriff haben.
</p>
<div class="mw-heading mw-heading2"><h2 id="Siehe_auch">Siehe auch</h2></div>
<ul><li><a href="Programmierger%C3%A4t" title="Programmiergerät">Programmiergerät</a></li>
<li><a href="Programmierparadigma" title="Programmierparadigma">Programmierparadigma</a></li></ul>
<div class="mw-heading mw-heading2"><h2 id="Literatur">Literatur</h2></div>
<ul><li>Michael Sperber, <a href="Herbert_Klaeren" title="Herbert Klaeren">Herbert Klaeren</a>: <i>Schreibe dein Programm! Einführung in die Programmierung</i>. Tübingen Library Publishing, Tübingen 2024, ISBN 978-3-947251-88-9</li></ul>
<div class="mw-heading mw-heading2"><h2 id="Weblinks">Weblinks</h2></div>
<div class="sisterproject" style="margin:0.1em 0 0 0;"><span class="noviewer" style="display:inline-block; line-height:10px; min-width:1.6em; text-align:center;" aria-hidden="true" role="presentation"><span class="mw-default-size" typeof="mw:File"><span title="Wiktionary"></span></span></span><b><a href="https://de.wiktionary.org/wiki/Programmierung" class="extiw external" title="wikt:Programmierung">Wiktionary: Programmierung</a></b>&nbsp;– Bedeutungserklärungen, Wortherkunft, Synonyme, Übersetzungen</div>
<div class="sisterproject" style="margin:0.1em 0 0 0;"><div class="noresize noviewer" style="display:inline-block; line-height:10px; min-width:1.6em; text-align:center;" aria-hidden="true" role="presentation"><span class="mw-default-size" typeof="mw:File"><span title="Commons"></span></span></div><b><span class=""><a class="external text" href="https://commons.wikimedia.org/wiki/Category:Computer_programming?uselang=de"><span lang="en">Commons</span>: Programmierung</a></span></b>&nbsp;– Sammlung von Bildern, Videos und Audiodateien</div>
<div class="sisterproject" style="margin:0.1em 0 0 0;"><div class="noviewer" style="display:inline-block; line-height:10px; min-width:1.6em; text-align:center;" aria-hidden="true" role="presentation"><span class="mw-default-size" typeof="mw:File"><span title="Wikibooks"></span></span></div><b><a href="https://de.wikibooks.org/wiki/Regal:Programmierung" class="extiw external" title="b:Regal:Programmierung">Wikibooks: Das Buchregal "Programmierung"</a></b>&nbsp;– Lern- und Lehrmaterialien</div>
<ul><li>Joachim Korb: <a rel="nofollow" class="external text" href="http://perspektive89.com/2006/12/21/geschichte_der_softwareprogrammierung_freie_software_fur_freiheit_und_gerechtigkeit"><i>Die Geschichte der Softwareprogrammierung.</i></a> perspektive89.com</li>
<li><a rel="nofollow" class="external text" href="http://www.az2000.de/docs/coding_for_dummies/"><i>Einführung ins Programmieren</i>.</a> az2000.de (für Neueinsteiger).</li>
<li><a rel="nofollow" class="external text" href="http://www.highscore.de/grundlagen/"><i>Allgemeine Grundlagen der Programmierung</i>.</a> highscore.de (Online-Buch).</li></ul>
<div class="mw-heading mw-heading2"><h2 id="Einzelnachweise">Einzelnachweise</h2></div>
<ol class="references">
<li id="cite_note-1"><span class="mw-cite-backlink"><a href="#cite_ref-1">↑</a></span> <span class="reference-text"><a href="Wilhelm_Pape" title="Wilhelm Pape">Wilhelm Pape</a>, Max Sengebusch (Bearb.): <i>Handwörterbuch der griechischen Sprache</i>. 3. Auflage, 6. Abdruck, Vieweg &amp; Sohn, Braunschweig 1914; <a rel="nofollow" class="external text" href="http://images.zeno.org/Pape-1880/K/big/Pape-1880----02-0714.png">zeno.org</a></span>
</li>
<li id="cite_note-2"><span class="mw-cite-backlink"><a href="#cite_ref-2">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="https://www.ibm.com/de-de/topics/software-development"><i>Was ist Softwareentwicklung?</i></a> IBM; abgerufen am 18. Juni 2024</span>
</li>
<li id="cite_note-3"><span class="mw-cite-backlink"><a href="#cite_ref-3">↑</a></span> <span class="reference-text"><span class="cite">Sebastian Dörn: <a rel="nofollow" class="external text" href="http://sebastiandoern.de/"><i>Programmieren lernen und Algorithmen verstehen.</i></a><span class="Abrufdatum"> Abgerufen am 12.&nbsp;Januar 2018</span>.</span><span style="display: none;" class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&amp;rfr_id=info%3Asid%2Fde.wikipedia.org%3AProgrammierung&amp;rft.title=Programmieren+lernen+und+Algorithmen+verstehen&amp;rft.description=Programmieren+lernen+und+Algorithmen+verstehen&amp;rft.identifier=http%3A%2F%2Fsebastiandoern.de%2F&amp;rft.creator=Sebastian+D%C3%B6rn">&nbsp;</span></span>
</li>
<li id="cite_note-4"><span class="mw-cite-backlink"><a href="#cite_ref-4">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://www.computerhistory.org/babbage/engines/">computerhistory.org</a></span>
</li>
<li id="cite_note-5"><span class="mw-cite-backlink"><a href="#cite_ref-5">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="https://collection.sciencemuseumgroup.org.uk/documents/aa110000020">collection.sciencemuseumgroup.org.uk</a></span>
</li>
<li id="cite_note-6"><span class="mw-cite-backlink"><a href="#cite_ref-6">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="https://link.springer.com/chapter/10.1007/978-3-642-18631-8_9">link.springer.com</a></span>
</li>
<li id="cite_note-7"><span class="mw-cite-backlink"><a href="#cite_ref-7">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://www.cs.yale.edu/homes/tap/Files/hopper-story.html">Grace Hopper.</a> Yale University; abgerufen am 7. Juni 2016</span>
</li>
<li id="cite_note-8"><span class="mw-cite-backlink"><a href="#cite_ref-8">↑</a></span> <span class="reference-text">Ulrich Kohler, Frauke Kreuter: <cite style="font-style:italic">Datenanalyse mit Stata: Allgemeine Konzepte der Datenanalyse und ihre praktische Anwendung</cite>. 4. Auflage. Oldenbourg Wissenschaftsverlag, 2012, ISBN 978-3-486-70921-6, <span style="white-space:nowrap">S.<span style="display:inline-block;width:.2em">&nbsp;</span>113</span> (<a rel="nofollow" class="external text" href="https://books.google.de/books?id=qjEBKBTGvsYC&amp;pg=PA113&amp;lpg=PA113&amp;dq=Sprechende+Variablennamen&amp;source=bl&amp;ots=eFX3_Me1c7&amp;sig=5EM93MGll4hnaWJodFK_Y_jkc-E&amp;hl=de&amp;sa=X&amp;ved=0ahUKEwj4hreU3oPMAhVLFiwKHXrxC00Q6AEINjAF#v=onepage&amp;q=Sprechende%20Variablennamen&amp;f=false">books.google.com</a> – Datenanalyse mit Stata: Allgemeine Konzepte der Datenanalyse und ihre praktische Anwendung – mit „sprechende Variablennamen“ im Abschnitt „5.6 Beschriftung von Variablen“).<span class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rfr_id=info:sid/de.wikipedia.org:Programmierung&amp;rft.au=Ulrich+Kohler%2C+Frauke+Kreuter&amp;rft.btitle=Datenanalyse+mit+Stata%3A+Allgemeine+Konzepte+der+Datenanalyse+und+ihre+praktische+Anwendung&amp;rft.date=2012&amp;rft.edition=4.&amp;rft.genre=book&amp;rft.isbn=9783486709216&amp;rft.pages=113&amp;rft.pub=Oldenbourg+Wissenschaftsverlag" style="display:none">&nbsp;</span></span>
</li>
<li id="cite_note-9"><span class="mw-cite-backlink"><a href="#cite_ref-9">↑</a></span> <span class="reference-text"><a href="Niklaus_Wirth" title="Niklaus Wirth">Niklaus Wirth</a>: <cite style="font-style:italic">A Brief History of Software Engineering</cite>. In: <cite style="font-style:italic">IEEE Annals of the History of Computing</cite>. <span style="white-space:nowrap">Band<span style="display:inline-block;width:.2em">&nbsp;</span>30</span>, 3, Juli–September, 2008, <span style="white-space:nowrap">S.<span style="display:inline-block;width:.2em">&nbsp;</span>32–39</span>, <a href="Digital_Object_Identifier" title="Digital Object Identifier">doi</a>:<span class="uri-handle" style="white-space:nowrap"><a rel="nofollow" class="external text" href="https://doi.org/10.1109/MAHC.2008.33">10.1109/MAHC.2008.33</a></span> (<a rel="nofollow" class="external text" href="http://www2.computer.org/cms/Computer.org/ComputingNow/homepage/2009/0409/BriefHistoryofSoftwareEng.pdf">computer.org</a> [PDF; abgerufen am 30.&nbsp;April 2009]).<span class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rfr_id=info:sid/de.wikipedia.org:Programmierung&amp;rft.atitle=A+Brief+History+of+Software+Engineering&amp;rft.au=Niklaus+Wirth&amp;rft.date=2008&amp;rft.doi=10.1109%2FMAHC.2008.33&amp;rft.genre=journal&amp;rft.issue=3%2C+Juli-September&amp;rft.jtitle=IEEE+Annals+of+the+History+of+Computing&amp;rft.pages=32-39&amp;rft.volume=30" style="display:none">&nbsp;</span></span>
</li>
</ol>
<div class="hintergrundfarbe1 rahmenfarbe1 navigation-not-searchable normdaten-typ-s" style="border-style: solid; border-width: 1px; clear: left; margin-bottom:1em; margin-top:1em; padding: 0.25em; overflow: hidden; word-break: break-word; word-wrap: break-word;" id="normdaten">
<div style="display: table-cell; vertical-align: middle; width: 100%;">
<div>
Normdaten&nbsp;(Sachbegriff): <a href="Gemeinsame_Normdatei" title="Gemeinsame Normdatei">GND</a>: <span class="-print"><a rel="nofollow" class="external text" href="https://d-nb.info/gnd/4076370-5">4076370-5</a></span> </div>
</div></div></div><!--htdig_noindex--><div><div class="zim-footer">
Dieser Artikel wurde von <a class="external text" title="Zuletzt bearbeitet am 2025-07-01" href="https://de.wikipedia.org/wiki/?title=Programmierung&amp;oldid=257518557">Wikipedia</a> herausgegeben. Der Text ist unter <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.de">Creative Commons Attribution-Share Alike 4.0</a> verfügbar, sofern nicht anders angegeben. Für die Mediendateien können zusätzliche Bedingungen gelten.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>
<script src="./_webp_/webpHandler.js"></script>

</body></html>